<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
		http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
		http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.2.xsd
		http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd">
	
	<!-- 도메인을 위한 세션 팩토리를 설정한다. -->
	<bean id="visionworksSessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
		<property name="annotatedClasses">
			<list>
				<value>com.nts.visionworks.core.multipart.domain.Archive</value>
				<value>com.nts.visionworks.business.application.domain.ApplicationMenu</value>
				<value>com.nts.visionworks.business.application.domain.ApplicationMenuContents</value>
				<value>com.nts.visionworks.business.application.domain.ApplicationRelease</value>
				<value>com.nts.visionworks.business.application.domain.ApplicationSetting</value>
				<value>com.nts.visionworks.business.application.domain.ApplicationUpdated</value>
				<value>com.nts.visionworks.business.application.domain.ServiceApplication</value>
				<value>com.nts.visionworks.business.application.domain.ServiceChannel</value>
				<value>com.nts.visionworks.business.contents.domain.Contents</value>
				<value>com.nts.visionworks.business.contents.domain.ContentsAttribute</value>
				<value>com.nts.visionworks.business.contents.domain.ContentsDelegatedThumbnail</value>
				<value>com.nts.visionworks.business.contents.domain.ContentsElement</value>
				<value>com.nts.visionworks.business.contents.domain.ContentsMedia</value>
				<value>com.nts.visionworks.business.contents.domain.ContentsMediaThumbnail</value>
				<value>com.nts.visionworks.business.contents.domain.ContentsTemplate</value>
				<value>com.nts.visionworks.business.contents.domain.ContentsTemplateAttribute</value>
				<value>com.nts.visionworks.business.contents.domain.ContentsTemplateElement</value>
				<value>com.nts.visionworks.business.contents.domain.UnitElement</value>
				<value>com.nts.visionworks.business.endpoint.domain.EndPoint</value>
				<value>com.nts.visionworks.business.endpoint.domain.EndPointCategory</value>
				<value>com.nts.visionworks.business.endpoint.domain.EndPointDisplay</value>
				<value>com.nts.visionworks.business.endpoint.domain.EndPointScreenshot</value>
				<value>com.nts.visionworks.business.endpoint.domain.ErrorRecord</value>
				<value>com.nts.visionworks.business.endpoint.domain.Building</value>
				<value>com.nts.visionworks.business.endpoint.domain.BuildingFloor</value>
				<value>com.nts.visionworks.business.endpoint.domain.BuildingFloorArea</value>
				<value>com.nts.visionworks.business.endpoint.domain.BuildingFloorImage</value>
				<value>com.nts.visionworks.business.schedule.domain.Schedule</value>
				<value>com.nts.visionworks.business.schedule.domain.ScheduleContentsStage</value>
				<value>com.nts.visionworks.business.schedule.domain.ScheduleEndPointPower</value>
				<value>com.nts.visionworks.business.schedule.domain.ScheduleOperationTrace</value>
				<value>com.nts.visionworks.business.schedule.domain.ScheduleStageDivision</value>
				<value>com.nts.visionworks.business.streamevent.domain.StreamEvent</value>
				<value>com.nts.visionworks.business.streamevent.domain.StreamSynapse</value>
				<value>com.nts.visionworks.business.streamevent.domain.StreamSynapseCoefficient</value>
				<value>com.nts.visionworks.business.streamevent.domain.StreamSynapseTransmitter</value>
			</list>
		</property>
		<property name="mappingResources">
			<list>
				<value>Application.hbm.xml</value>
				<value>Contents.hbm.xml</value>
				<value>EndPoint.hbm.xml</value>
			</list>
		</property>
		<property name="hibernateProperties">
			<ref bean="visionworksDaoProperty"/>
		</property>
	</bean>
	
	<!-- 세션 팩토리에 대한 트랙잭션 매니저를 설정한다. -->
	<bean id="visionworksTransactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
		<property name="sessionFactory">
			<ref bean="visionworksSessionFactory"/>
		</property>
	</bean>
	
	<!-- 트랜잭션 매니저에 대한 annotation을 설정한다. -->
	<tx:annotation-driven transaction-manager="visionworksTransactionManager"/>
	
</beans>